#include <REGX52.H>
/**
 * 灯一开始是常亮状态
 * 按一下变为闪烁。
 * 按一下熄灭。
 * 按一下常亮。
 * 三个状态切换
 *
 */

void delay_ms(unsigned int ms)
{
    unsigned int i, j;
    for (i = 0; i < ms; i++)
    {
        for (j = 0; j < 123; j++)
            ;
    }
}
sbit LED=P3^1;
sbit BTN=P3^7;
int state=0;
void main()
{
    LED=1;
    while(1)
    {
        if (BTN == 0)
        {
            if (BTN == 0)
            {
                while (BTN == 0)
                {
                }
                state++;
            }
        }
        if (state % 3 == 1)
        {
            LED=0;
            delay_ms(200);
            LED=1;
            delay_ms(200);
        }
        else if (state % 3 == 2)
        {
            LED=0;
        }
        else if (state % 3 == 0)
        {
            LED=1;
        }
    }
}